Graphics processing is a computationally intensive task. In order that such graphic processing can be performed efficiently it is often necessary to adapt the processing being performed or the system which is performing that processing so as, for example, to reduce performance bottlenecks. The effects which give rise to performance bottlenecks and other operating characteristics can be subtle and it can be difficult to identify the cause of low performance or other problem.
It is known to provide graphics processing systems with monitoring circuitry which is able to capture diagnostic/performance information in respect of graphics processing operations that are performed. Such information may, for example, tell the hardware designer or application author how many processing cycles of the graphics processing apparatus are used in rendering each frame. While such mechanisms may be useful in identifying that a problem exists, such that an excessive number of processing cycles are required, there exists a difficulty in understanding what is causing such problems. Techniques which can assist in the understanding of the complex behavior of graphics processing systems to identify problems therein are advantageous.